<?php
/**
 * GioCMS
 * 
 * LICENSE
 *
 * This source file is subject to the GNU GENERAL PUBLIC LICENSE Version 2 
 * that is bundled with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://www.gnu.org/licenses/gpl-2.0.txt
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to license@ninhgio.com so we can send you a copy immediately.
 * 
 * @copyright	Copyright (c) 2010-2011 GioCMS (http://cms.ninhgio.com)
 * @license		http://www.gnu.org/licenses/gpl-2.0.txt GNU GENERAL PUBLIC LICENSE Version 2
 * @author		NinhGio - ninhgio@gmail.com
 * @since		1.0
 */

class Modules_Core_Models_Mysql_Target extends Modules_Core_Models_Target
{
	protected $_table = 'core_hook_target';
	
	public function getTargets()
	{
		$sql  = "SELECT target_id, target_name, hook_module, hook_name, hook_type
				FROM " . $this->_conn->_tablePrefix . $this->_table . "
				ORDER BY target_id ASC";
		
		$rs = $this->_conn->query($sql);
		$rows = array();
		while ($row = $this->_conn->fetchAll($rs)) {
			$rows[] = $row;
		}
		/**
		 * Free result 
		 */
		$this->_conn->freeResult($rs);
		return $rows;						
	}
	
	public function add($target)
	{
		return $this->_conn->insert($target, $this->_conn->_tablePrefix . $this->_table);
	}
	
	public function delete($id)
	{
		$sql = sprintf("DELETE FROM " . $this->_conn->_tablePrefix . $this->_table . " WHERE target_id = '%s'",
						$this->_conn->escape($id));
		$rs = $this->_conn->query($sql);
		$affectRow = $this->_conn->affectedRows();
		$this->_conn->freeResult($rs);
		return $affectRow;	
	}
}
